iT邦幫忙

2024 iThome 鐵人賽

DAY 5
1

今天也繼續繼續加油、繼續刷刷刷刷刷刷~

題目1:Python 模組(module) 是什麼意思

Python 模組(module)白話講就是一個檔案,裡面包含Python程式碼,可以是變數、函數、類別或是其他邏輯片段。
Python 模組(module) 存在的目的是為了讓程式碼更有組織、更容易重複使用。可以想像成這是一個工作箱,裡面有很多不同種類的工具,可以讓你隨時呼叫使用,以便解決你想要解決的問題。

舉個例子:
假設要計算一個圓面積的函數,可以先把這函數寫在一個檔案叫circle.py的檔案裡,這檔案就是一個模組。當要使用這個函數時,只要在主程式檔的程式碼中引用這個模組,就可以直接使用裡面的函數。

這樣做可以讓程式碼更有組織,也可以在不同程式碼檔案裡,重複使用相同的邏輯,而不用每次都重新寫一遍。
https://ithelp.ithome.com.tw/upload/images/20240919/20168371ZOoTmR0wlY.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371IDdGTRTrxO.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371mp0qnWiG28.png
上面舉的例子是Python本身內建的模組math,下面舉的例子是自己另外建立一個模組,專門處理文件的讀取和寫入。
https://ithelp.ithome.com.tw/upload/images/20240919/20168371IBpUTsV9sP.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371nZzuMb3gPU.png

第1題結束。
————————————我是可愛的題目分隔線————————————

題目2:Python 裡random 模組的shuffle( ) 函數的應用

在Python裡,random模組的shuffle()函數,主要用來將序列(例如列表)的元素隨機打亂。
這個函數會直接改變原來的列表,不會返回新的列表。這在需要隨機化元素的情況下非常有用,像是洗牌、隨機選擇某樣東西時。

舉個例子:隨機挑選運動會隊伍(因為寫的當下在打奧運,嘟嘟好:)))
https://ithelp.ithome.com.tw/upload/images/20240919/20168371F8knJ62roW.png

這樣就會印出隨機挑選後的隊伍順序了。
https://ithelp.ithome.com.tw/upload/images/20240919/201683718q7ullmYgX.png

第2題結束。
————————————我是可愛的題目分隔線————————————

題目3:Python裡super( )函數的應用

Python裡的super( )函數是一個內建函數,主要用在繼承(inheritance)中子類別呼叫其父類別的方法。
這樣可以讓子類別在擴展或修改赴類別的功能時,仍可以使用父類別已經定義好的功能。

那一樣來舉個例子:
假如我們要泡一杯咖啡。
首先,定義咖啡的父類別(廣義的定義)是叫「飲料」,咖啡是飲料的一種很合理。
再來,我們要拿一個杯子去裝咖啡(這個動作也要被定義)。->>>到這邊是「準備咖啡」的父類別「飲料」本身的定義(飲料可以用杯子裝)

接著是這杯咖啡需要什麼準備的方法/食材,還有準備「動作」:加咖啡粉、加熱水、攪拌均勻。->>>這咖啡會繼承「飲料」本身的定義,然後「咖啡」類別中額外的步驟,會再依次印出「加咖啡粉」、「加熱水」和「攪拌均勻」。

這樣就可以在「咖啡」這種飲料中,修改成其他的類別(泡其他飲料,可以像是茶之類的),而不用改到「飲料」這個父類別的內容。

程式碼例子如下:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371tBdqkr0Fps.png

https://ithelp.ithome.com.tw/upload/images/20240919/201683717zIOa8aJOh.png

第3題結束。
————————————我是可愛的題目分隔線————————————

題目4:Python裡divmod( ) 的應用

divmod()函數的作用是一次性計算出兩個數字的商(取「整數」)和餘數。
基本語法為:divmod(a, b)
這裡的a是被除數,b是除數。

舉個例子:
假設有19顆羽球(台灣奧運羽球金牌呢~),我想要把他們分成每組兩個羽球。就可以使用divmod( )函數來計算->>>每組羽球的數量和剩下的羽球數量:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371r3eNjFzLso.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371eNO9mJVuUA.png

(3, 4)的意思就是指,我把羽球分成9組,每組2個羽球,最終會剩下1個羽球。

第4題結束。
————————————我是可愛的題目分隔線————————————

題目5:如何在Python中取得字典

可以使用字典的key( )方法來取得所有的key。什麼意思呢。舉個例子比較好理解:
假設有一個字典叫challenger_age,裡面放了一些挑戰者的年齡資訊:

如果我想要取得所有的key(即挑戰者的名字),就會這樣做:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371ixFUZg21Ml.png

這個key( )方法會返回所有key的view object,這些view object可以轉換成列表,方便進一步使用或檢視。
https://ithelp.ithome.com.tw/upload/images/20240919/2016837185nPlj4ipY.png

這個 dict_keys 物件是字典的key的視圖,它顯示了所有的key。如果你需要將這些key轉換為列表,可以進一步做這樣的操作:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371gNdn4u7sAv.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371p3pkDVFLS7.png

第5題結束。
————————————我是可愛的題目分隔線————————————

題目6:在Python裡,元組轉成字典應用

在Python中,將元組轉換成字典可以根據元組的結構來完成。
以下有幾種常見的方式可以完成這個轉換:

  1. 元組包含鍵值(key, value)對

使用dict( )函數直接轉換:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371TR7IM2euXq.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371722zaDSqdR.png

  1. 元組包含多個鍵值(key, value)對

使用zip( )函數將key跟value組合,然後用dict( )轉換:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371K2HrwoteyO.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371OVq5ecm4Y9.png

  1. 元組中的元素是嵌套的鍵值(key, value)對

處理更複雜的結構時,確保元組的格式符合鍵值(key, value)對結構,可以直接使用dict( )轉換:
https://ithelp.ithome.com.tw/upload/images/20240919/201683718VqDsZE8fg.png

https://ithelp.ithome.com.tw/upload/images/20240919/201683713QgtfZ4hi8.png

第6題結束。
————————————我是可愛的題目分隔線————————————

題目7:在Python裡,使用del 分別刪除字典元素與字典的應用

在Python裡,關鍵字del可以用來刪除字典中的特定元素或是整個字典。
有兩種常見的用法:

  1. 刪除字店中的特定元素
    舉個例子:
    假設有一個名叫運動的字典,包含了一些運動項目有幾人參加:
    https://ithelp.ithome.com.tw/upload/images/20240919/20168371nSU5MLjs7b.png

如果想刪除swimming這個key以及對應的value(3),可以使用del:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371nElzA0zIN4.png

https://ithelp.ithome.com.tw/upload/images/20240919/201683717wK2sajH2Q.png
swimming這個項目就被刪除了。

  1. 刪除整個字典(sports):del dict
    會直接出錯,因為sports這個變量已經不復存在,所以如果嘗試運作/訪問這個變量的話,就會顯示NameError的錯誤了。
    https://ithelp.ithome.com.tw/upload/images/20240919/20168371IJLofBcIcw.png

https://ithelp.ithome.com.tw/upload/images/20240919/201683715obJq5BsUs.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371h9RHzr5DC4.png

第7題結束。
————————————我是可愛的題目分隔線————————————

題目8:在Python裡,刪除字典的元素除了del還有哪個

pop( )方法可以刪除指定的key,並返回被刪除的value。
如果指定的key不存在,pop( )方法會引發NameError。

跟上一題一樣的例子:要刪除swimming這個項目:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371jaAc7haI8f.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371G393cprctE.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371Z5uxDzjEo3.png

把原本的swimming項目刪掉後,印出的結果會是:
print(swimming_count)會顯示Not found
https://ithelp.ithome.com.tw/upload/images/20240919/201683715HFcHUPqF4.png

第8題結束。
————————————我是可愛的題目分隔線————————————

題目9:在Python裡,串列轉成字典的三個應用

  1. 使用 zip() 函數
  2. 使用字典推導式
    舉個例子:
    https://ithelp.ithome.com.tw/upload/images/20240919/20168371ntm3YG3ciQ.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371WrvnPx5W9v.png

  1. 使用 dict() 函數和列表的元組

總結:

  1. 使用 zip() 函數:將兩個串列(鍵和值)組合成字典
  2. 使用字典推導式:將鍵值對的串列(元組)轉換為字典
  3. 使用 dict() 函數:將鍵值對的串列(元組)直接轉換為字典

第9題結束。
————————————我是可愛的題目分隔線————————————

題目10:在Python裡,用不同數據呼叫函數3 次

舉個例子:
假設有一個簡單的函數,它可以計算兩個數字的總和:
https://ithelp.ithome.com.tw/upload/images/20240919/20168371T0Yzp0oue4.png

https://ithelp.ithome.com.tw/upload/images/20240919/20168371azYZpyiPjS.png

總結:

  1. 定義一個函數(add_numbers後,你可以用不同的數據來多次呼叫它
  2. 每次呼叫時,根據傳遞的數據,函數會執行相應的計算或操作
  3. 這樣可以使設定的函數(add_numbers)更靈活,能夠處理不同的輸入並返回對應的結果

第10題結束。
---距離集滿300題還剩250題---


上一篇
第四天刷題
下一篇
第六天刷題
系列文
Python 新手入門:挑戰30天刷完300題13
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言